<?php

namespace App\Models;

class LoginLog extends AbstractModel
{

    const UPDATED_AT = null;

    /**
     * 表名
     *
     * @var string
     */
    protected $table = 'login_logs';

    /**
     * 支持批量填充的字段
     *
     * @var array
     */
    protected $fillable = ['ip', 'ua', 'remember', 'logout_at'];

    /**
     * 多态关联: 所属用户
     *
     * @return \Illuminate\Database\Eloquent\Relations\MorphTo
     */
    public function user()
    {
        return $this->morphTo();
    }

    /**
     * IP自动设置成long型
     *
     * @param $value
     */
    public function setIpAttribute($value)
    {
        $this->attributes['ip'] = ip2long($value);
    }

    /**
     * IP自动设置成string型
     *
     * @param $value
     *
     * @return string
     */
    public function getIpAttribute($value)
    {
        return long2ip($value);
    }
}
